ci: add MCP interface diff workflow for Everything server#3260
Open
SamMorrowDrums wants to merge 3 commits intomodelcontextprotocol:mainfrom
Open
ci: add MCP interface diff workflow for Everything server#3260SamMorrowDrums wants to merge 3 commits intomodelcontextprotocol:mainfrom
SamMorrowDrums wants to merge 3 commits intomodelcontextprotocol:mainfrom
Conversation
Adds a GitHub Actions workflow that tracks public interface changes to the Everything MCP server using mcp-server-diff. Features: - Runs on PRs and pushes affecting src/everything/ - Auto-compares against merge-base (PRs) or previous state (pushes) - Manual workflow_dispatch for comparing any two refs - Generates diff reports showing tool, resource, prompt, and capability changes This helps catch unintended interface changes and provides clear visibility into how the reference server evolves over time. Related: modelcontextprotocol/inspector#1034
Composite actions don't support working-directory at step level. Use full paths in commands instead.
Author
|
@cliffhall what do you think I'd need to do, or who do you think I'd need to ping to get this over the line (or get a definitive no)? As mentioned offer is open to:
https://discord.com/channels/1358869848138059966/1466125436932198483/1466211900160348394 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a GitHub Actions workflow that tracks public interface changes to the Everything MCP server. This provides clear visibility into how the reference implementation evolves over time—useful for SDK compliance validation, catching unintended regressions, and reviewing PRs that modify the server interface.
Motivation
The Everything server is the reference implementation that exercises all MCP protocol features. Changes to its public interface (tools, resources, prompts, capabilities) often signal:
Currently there's no automated way to see these changes at a glance. This workflow surfaces them directly in the GitHub Actions summary.
Related discussion: modelcontextprotocol/inspector#1034 - Interest in using mcp-server-diff for SDK compliance testing with the Everything server.
What the workflow does
src/everything/workflow_dispatchfor comparing any two refs (commits, tags, branches)Example output
Here's a real diff between commit
737ce98and the current HEAD of the Everything server:This clearly shows the new Tasks capability and the
simulate-research-querytool that were added.Real-world example
See the MCP diff action in use on github/github-mcp-server - this workflow run shows interface changes from the "Generate server instructions in Inventory" PR.
Workflow features
contents: readonly)Testing
The workflow uses SamMorrowDrums/mcp-server-diff which is also available as a CLI: